package com.gccloud.design.dao;

import com.gccloud.design.entity.SdApiRelaParamEntity;
import com.gccloud.design.entity.SdApiScriptTemplateEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author wu.yumin
 * @version 1.0.0
 * @Description
 * @date 2021/10/20 10:36
 */
@Mapper
public interface SdApiParmaScriptDao {

    /**
     * 新增api配置参数
     *
     * @param entity api配置参数
     */
    void insertParams(@Param("entity") SdApiRelaParamEntity entity);

    /**
     * 新增api参数模版脚本
     *
     * @param entity api参数模版脚本
     */
    void insertScriptTemplate(@Param("entity") SdApiScriptTemplateEntity entity);

    /**
     * 基于API标识删除参数配置
     *
     * @param apiId 主键
     */
    void deleteParamsByApiId(String apiId);

    /**
     * 基于API标识查询参数
     *
     * @param apiId API标识
     * @return 列表
     */
    List<SdApiRelaParamEntity> queryParamsByApiId(String apiId);

    /**
     * 基于API主键查询api参数模版脚本
     *
     * @param apiId API标识
     * @return api参数模版脚本
     */
    SdApiScriptTemplateEntity queryScriptTemplateByApiId(String apiId);

    /**
     * 修改api参数模版脚本
     *
     * @param entity api参数模版脚本
     */
    void updateScriptTemplate(@Param("entity") SdApiScriptTemplateEntity entity);
}
